package com.umpay.dto.merAccess.req.quickpayment;

import com.umpay.annotation.Pattern;
import com.umpay.dto.merAccess.req.CommonReq;
import org.hibernate.validator.constraints.NotEmpty;

/**
 * @ClassName: QuickPaymentVerifyCodeReq  
 * @Description: 标准快捷获取验证码请求接入类  
 * @author zhangtao  
 * @date May 12, 2018
 */
public class QuickPaymentVerifyCodeReq  extends CommonReq{
	
	/**
	 * 服务器异步通知路径
	 */
	@Pattern(message = "服务器异步通知路径格式不正确")
	private String notify_url;
	
	/**
	 * 商户流水号
	 */
	@NotEmpty(message ="商户流水号不能为空")
	@Pattern(message = "商户流水号格式不正确")
	private String mer_trace;
	
	/**
	 * 联动订单号
	 */
	@NotEmpty(message = "联动订单号不能为空")
	@Pattern(message = "联动订单号格式不正确")
	private String trade_no;
	
	/**
	 * 银行预留手机号
	 */
	@NotEmpty(message = "银行预留手机号不能为空")
	@Pattern(message = "银行预留手机号格式不正确")
	private String bank_mobile_id;
	
	/**
	 * 支付协议号
	 */
	@Pattern(message = "支付协议号格式不正确")
	private String p_agreement_id;
	
	/**
	 * 卡号
	 */
	@Pattern(message = "卡号格式不正确")
	private String card_id;
	
	/**
	 * 持卡人姓名
	 */
	@Pattern(message = "持卡人姓名格式不正确")
	private String card_holder;
	
	/**
	 * 证件类型
	 */
	@Pattern(message = "证件类型格式不正确")
	private String identity_type;
	
	/**
	 * 证件号
	 */
	@Pattern(message = "证件号格式不正确")
	private String identity_code;
	
	/**
	 * 信用卡有效期（YYMM）
	 */
	@Pattern(message = "信用卡有效期（YYMM）格式不正确")
	private String valid_date;
	/**
	 * 信用卡CVN2/CVV2
	 */
	@Pattern(message = "信用卡CVN2/CVV2格式不正确")
	private String cvv2;
	public String getNotify_url() {
		return notify_url;
	}
	public void setNotify_url(String notify_url) {
		this.notify_url = notify_url;
	}
	public String getMer_trace() {
		return mer_trace;
	}
	public void setMer_trace(String mer_trace) {
		this.mer_trace = mer_trace;
	}
	public String getTrade_no() {
		return trade_no;
	}
	public void setTrade_no(String trade_no) {
		this.trade_no = trade_no;
	}
	public String getBank_mobile_id() {
		return bank_mobile_id;
	}
	public void setBank_mobile_id(String bank_mobile_id) {
		this.bank_mobile_id = bank_mobile_id;
	}
	public String getP_agreement_id() {
		return p_agreement_id;
	}
	public void setP_agreement_id(String p_agreement_id) {
		this.p_agreement_id = p_agreement_id;
	}
	public String getCard_id() {
		return card_id;
	}
	public void setCard_id(String card_id) {
		this.card_id = card_id;
	}
	public String getCard_holder() {
		return card_holder;
	}
	public void setCard_holder(String card_holder) {
		this.card_holder = card_holder;
	}
	public String getIdentity_type() {
		return identity_type;
	}
	public void setIdentity_type(String identity_type) {
		this.identity_type = identity_type;
	}
	public String getIdentity_code() {
		return identity_code;
	}
	public void setIdentity_code(String identity_code) {
		this.identity_code = identity_code;
	}
	public String getValid_date() {
		return valid_date;
	}
	public void setValid_date(String valid_date) {
		this.valid_date = valid_date;
	}
	public String getCvv2() {
		return cvv2;
	}
	public void setCvv2(String cvv2) {
		this.cvv2 = cvv2;
	}
	@Override
	public String toString() {
		return "QuickPaymentVerifyCodeReq [notify_url=" + notify_url + ", mer_trace=" + mer_trace + ", trade_no="
				+ trade_no + ", bank_mobile_id=" + bank_mobile_id + ", p_agreement_id=" + p_agreement_id + ", card_id="
				+ card_id + ", card_holder=" + card_holder + ", identity_type=" + identity_type + ", identity_code="
				+ identity_code + ", valid_date=" + valid_date + ", cvv2=" + cvv2 + ", mer_id=" + mer_id + ", version="
				+ version + "]";
	}
	
}
